import { request } from "@/utils/http"
import {
  getHosListSearchParamsType,
  hospitalListReqReturnType,
  getProvinceReturnType,
  hospitalDetailReturnType,
  hosDepartmentListType,
  hosScheduleRuleParamsType,
  hosScheduleRuleReturnType,
  findScheduleListParamsType,
  findScheduleListType
} from "./model/hospitalListType"

//1.获取医院列表数据的请求
export const getHospitalListRequest = (page: number, limit: number, searchParams: getHosListSearchParamsType) => {
  return request.get<any, hospitalListReqReturnType>(`/admin/hosp/hospital/${page}/${limit}`, {
    params: searchParams
  })
}

//2.请求所有的省份
export const getProvinceRequest = () => {
  return request.get<any, getProvinceReturnType>("/admin/cmn/dict/findByDictCode/province")
}

//3.请求市或区
export const getCityOrDistrictRequest = (value: string) => {
  return request.get<any, getProvinceReturnType>(`/admin/cmn/dict/findByParentId/${value}`)
}

//4.请求医院详情信息
export const getHosListDetailRequest = (id: string) => {
  return request.get<any, hospitalDetailReturnType>(`/admin/hosp/hospital/show/${id}`)
}

//5.医院上下线
export const changeStatusRequest = (id:string,status:0|1)=>{
  return request.get<any>(`/admin/hosp/hospital/updateStatus/${id}/${status}`)
}

//6.医院所有科室的请求
export const hosDepartmentListRequest = (hoscode:string)=>{
  return request.get<any,hosDepartmentListType>(`/admin/hosp/department/${hoscode}`)
}

//7.某个科室的详细排班时间请求
export const hosScheduleRuleRequest = ({ page, limit, hoscode, depcode }: hosScheduleRuleParamsType)=>{
  return request.get<any, hosScheduleRuleReturnType>(`/admin/hosp/schedule/getScheduleRule/${page}/${limit}/${hoscode}/${depcode}`)
}

//8.获取某个科室某个时间具体详情
export const findScheduleListRequest = ({hoscode, depcode, workDate }: findScheduleListParamsType)=>{
  return request.get<any,findScheduleListType>(`/admin/hosp/schedule/findScheduleList/${hoscode}/${depcode}/${workDate}`)
}